#include <iostream>
#include <semaphore.h>


class Sem
{
private:

    sem_t _sem ;  // 通过设置该值来设定一端的线程数 ？ 

public:

    Sem(int value)
    {
        sem_init(&_sem, 0 , value);
    }

    void p()
    {
        sem_wait(&_sem);
    }

    void v()
    {
        sem_post(&_sem);
    }

    ~Sem()
    {
        sem_destroy(&_sem);
    }

};